<?php

class Segmento_model extends CI_Model {

    public function __construct() {
        parent::__construct();        
    }

    public function getAll(){
    	$retorno = array();

        $this->db->order_by('desc_segmento');
        $query   = $this->db->get('segmento');

        if($query && $query->num_rows() > 0){
            $retorno = $query->result();
        }

    	return $retorno;
    }


    public function getSegCount($limit = false){
        $retorno = array();

        $select = ' 
                    SELECT s.cod_segmento_auto, s.desc_segmento, count(DISTINCT e.cod_empresa_auto) qtde_empresas
                      FROM segmento s
                     INNER JOIN segmento_emp se ON s.cod_segmento_auto = se.cod_segmento_auto
                     INNER JOIN empresa e ON e.cod_empresa_auto = se.cod_empresa_auto
                     INNER JOIN item i ON i.cod_empresa_auto = e.cod_empresa_auto
                     INNER JOIN tamanho_item ti ON ti.cod_item_auto = i.cod_item_auto
                     INNER JOIN forma_pagto_emp fp ON fp.cod_empresa_auto = e.cod_empresa_auto
                     WHERE e.data_ativacao IS NOT NULL
                       AND e.empresa_bloqueada = 0
                       AND i.item_indisponivel = 0
                     GROUP BY s.cod_segmento_auto, s.desc_segmento
                     ORDER BY count(*) DESC, s.desc_segmento
                  ';

        if($limit){
            $select .= ' LIMIT '.$limit;
        }

        $query = $this->db->query($select);

        if($query && $query->num_rows() > 0){
            $retorno = $query->result();
        }

        return $retorno;
    }
}